$(function(){
	//web socket连接
	var _vsocket = null;
	
	//日期格式化函数
	Date.prototype.pattern = function(fmt) {        
	    var o = {        
	    "M+" : this.getMonth()+1, //月份        
	    "d+" : this.getDate(), //日        
	    "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时        
	    "H+" : this.getHours(), //小时        
	    "m+" : this.getMinutes(), //分        
	    "s+" : this.getSeconds(), //秒        
	    "q+" : Math.floor((this.getMonth()+3)/3),   //季度        
	    "S" : this.getMilliseconds()                //毫秒        
	    };        
	    var week = {        
	    "0" : "\u65e5",        
	    "1" : "\u4e00",        
	    "2" : "\u4e8c",        
	    "3" : "\u4e09",        
	    "4" : "\u56db",        
	    "5" : "\u4e94",        
	    "6" : "\u516d"       
	    };        
	    if(/(y+)/.test(fmt)){        
	        fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));        
	    }        
	    if(/(E+)/.test(fmt)){        
	        fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "\u661f\u671f" : "\u5468") : "")+week[this.getDay()+""]);        
	    }        
	    for(var k in o){        
	        if(new RegExp("("+ k +")").test(fmt)){        
	            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));        
	        }        
	    }        
	    return fmt;        
	};
	
	//消息显示
	var _fAddText = function(textarea)
	{
		var txt = textarea+"</br>" ;
		$("#showDiv").append(txt);
	};
	
	//发送消息至服务端
    var _fSendMsg = function(toUsername, msg, time)
    {
    	var jMsg = {
                 "action":  "textMsg",
                 "msg" : msg,
                 "fromUsername" : "",
                 "toUsername" : toUsername, 
                 createTime: time
	        };
        
        _vsocket.send(JSON.stringify(jMsg));
    };
    
    //发送按钮
    $("#sendButton").click(function() {
        var d = new Date();  
        var strD = d.pattern("yyyy-MM-dd hh:mm:ss");
        _fAddText("自己  " + strD);
        _fAddText($('#inputArea').val());
        
        _fSendMsg(_vtoUser, $('#inputArea').val(), strD);
        $('#inputArea').val("");
    }); 
    
    
    /**
	 * 开始处理socket业务逻辑
	 * */
    _vsocket = new WebSocket('ws://linyuqun.oicp.net:8080/webchat/chatserver');
    _fAddText("正在连接服务器 ……");
	
	//打开Socket 
	_vsocket.onopen = function(event) 
    {
		_fAddText("连接成功！");
        var registObj = {
        	    "action" : "regist",
        	    "role" : "visitor",
                };
        _vsocket.send(JSON.stringify(registObj));        
    };
    
    _vsocket.onmessage = function(event) 
    {
        var e =  eval('(' + event.data + ')');  
        //只有已登录的用户才需要好友列表
        if(e.action == "textMsg")
        {
            var tx = '' + e.fromUsername + " "
                      + e.createTime + ":" + '</br>'
                      + e.msg;
            _fAddText(tx);
        }
    };  
    
    _vsocket.onclose = function(event) 
    {
    	_fAddText("连接断开！");
    };
	    
    if(_vsocket==null)
    {
    	_fAddText("连接失败！");
    }
    else
    {
    }    
});